package com.cjyd.hrjb.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cjyd.hrjb.model.dto.UserDto;
import com.cjyd.hrjb.model.vo.UserVo;

/**
 * Created fei wo by 2020/4/5
 */
public interface UserService {

    /**
     * 用户注册
     * @param userDto {@link UserDto}
     * @return {@link UserVo}
     */
    UserVo register(UserDto userDto);

    /**
     * 同步小鹅通用户信息
     * @param userId 用户ID
     * @return {@link UserVo}
     */
    UserVo syncXetUserInfo(Long userId);

    /**
     * 获取推荐人信息
     * @param userId 用户ID
     * @return {@link UserVo}
     */
    UserVo getRecommendUserInfo(Long userId);

    /**
     * 获取下属用户
     * @param userId 用户ID
     * @param offset 页数
     * @param limit 每页多少条数据
     * @return {@link IPage<UserVo>}
     */
    IPage<UserVo> getSubUserPageList(Long userId,Integer offset, Integer limit);

    /**
     * 用户列表
     * @param searchKey 查询关键字
     * @param offset 页数
     * @param limit 每页多少条数据
     * @return {@link IPage<UserVo>}
     */
    IPage<UserVo> listPage(String searchKey, Integer offset, Integer limit);
}
